package com.climb.moive.dao;

import com.climb.moive.entity.Movie;

import java.sql.SQLException;
import java.util.List;

public interface MovieDao {
    /*CRUD*/
    Integer countMovie() throws SQLException;

    List<Movie> findAllMovie()  throws SQLException;

    Movie findMovieById(Integer id) throws SQLException;

    void delete(int id) throws SQLException;

    void update(Movie movie) throws SQLException;

    void insert(Movie movie) throws SQLException;

    List<Movie> findMoveByDirector(String name) throws SQLException;

    List<Movie> findMoveByMovieName(String name) throws SQLException;

    List<Movie> findMoveByActor(String name) throws SQLException;

    List<Movie> findRecentlyReleaseMovies() throws SQLException;

    List<Movie> findMoviesbyType(String type) throws SQLException;

    List<Movie> findMoviesbyLanguage(String language) throws SQLException;
}
